Cosimo Cecchi [Tue, 20 Nov 2012 17:43:37 +0000 (12:43 -0500)]
tree-view: don't use gtk_style_context_set_background()
Render a background with gtk_render_background() in draw() instead.
Note that we still use gtk_style_context_set_background() for the header
window.
https://bugzilla.gnome.org/show_bug.cgi?id=688744
Cosimo Cecchi [Tue, 20 Nov 2012 17:28:14 +0000 (12:28 -0500)]
iconview: don't use gtk_style_context_set_background()
Render a background with gtk_render_background() during draw instead.
https://bugzilla.gnome.org/show_bug.cgi?id=688744
Michael Natterer [Tue, 20 Nov 2012 18:10:06 +0000 (19:10 +0100)]
quartz: fix the mapping of GDK_KP_Enter in known_numeric_keys[]
so it will actually be used, instead of delivering GDK_Return
when it should be GDK_KP_Enter.
(cherry picked from commit
27f3fcf12c39d551532872cf26823993c93eb04d)
Matthias Clasen [Tue, 20 Nov 2012 12:00:53 +0000 (07:00 -0500)]
Post-release version bump
Matthias Clasen [Tue, 20 Nov 2012 11:28:59 +0000 (06:28 -0500)]
Update expected output for the entries a11y test
This change is due to entry icons now being accessible.
Benjamin Otte [Tue, 20 Nov 2012 11:21:03 +0000 (12:21 +0100)]
reftests: Fix linear-gradient reftest (again)
Make it so that the repeating vs normal test only uses sharp color
cutoffs instead of real gradients. That removes rounding errors and
makes the test pass.
Benjamin Otte [Tue, 20 Nov 2012 11:10:23 +0000 (12:10 +0100)]
cssvalue: Fix copy/paste error
Introduced in
e3f407a7.
Matthias Clasen [Tue, 20 Nov 2012 10:54:53 +0000 (05:54 -0500)]
Fix parser tests for color changes
Matthias Clasen [Tue, 20 Nov 2012 00:12:16 +0000 (19:12 -0500)]
3.7.2
Michael Natterer [Fri, 9 Nov 2012 16:12:30 +0000 (17:12 +0100)]
quartz: always send GDK_NOTIFY_NONLINEAR crossing events
so GtkMenu works properly. This is not right, but not more
wrong than always sending GDK_NOTIFY_ANCESTOR either.
(cherry picked from commit
35a9322e45bb403d34c9e4da036d9d8d559419fb)
Michael Natterer [Tue, 20 Nov 2012 09:28:58 +0000 (10:28 +0100)]
Bug 672193 - windows (including menus) shown multiple times don't...
Based on a patch from Paul Davis, inject synthetic enter events directly
into the Quartz event stream, instead of trying to synthesize them in GDK.
This seems to magically fix most combo box popup weirdness, I guess
some code is relying on a specfic order of events, or any other state
imposed by the "proper" code path of events coming in the usual way.
The patch also removes _gdk_quartz_events_send_enter_notify_event()
which is now obsolete.
(sortof cherry-pixked from
979e5061a040f8896f505ffbd230f52af2d61ded
but needed manual editing because GdkQuartzWindow.c was renamed
and apparently earlier patches not picked correctly/completely)
Matthias Clasen [Mon, 19 Nov 2012 14:29:51 +0000 (09:29 -0500)]
Avoid infinite recursion in the ime input module
Benjamin Otte [Sat, 17 Nov 2012 12:23:44 +0000 (13:23 +0100)]
stylecontext: Split out a function
The function is used in multiple places, so split it out. In particular
because I'm about to change it.
Michael Natterer [Sun, 18 Nov 2012 19:14:32 +0000 (20:14 +0100)]
quartz: use the real current event time for generated motion events
(cherry picked from commit
b4a30877a9315ade584858f7259729dbda614bab)
Michael Natterer [Sun, 18 Nov 2012 16:42:31 +0000 (17:42 +0100)]
quartz: move tooltips window to the topmost level
so they can appear on top of popup menus. Also, reorder the switch()
statement in window_type_hint_to_level() so it resembles the stacking
order, to avoid confision like this in the future. Fixes bug 688512.
(cherry picked from commit
1a2509a6ab7f35caae758c2b31f40ef90d4fa94a)
Kjartan Maraas [Sat, 17 Nov 2012 15:42:44 +0000 (16:42 +0100)]
Updated Norwegian bokmål translation
Kjartan Maraas [Sat, 17 Nov 2012 15:14:38 +0000 (16:14 +0100)]
Updated Norwegian bokmål translation
Benjamin Otte [Thu, 15 Nov 2012 18:18:19 +0000 (19:18 +0100)]
cssprovider: Handle non-existing section
Otherwise we'll get warnings on errors when CSS debug is disabled.
Michael Natterer [Thu, 15 Nov 2012 12:17:31 +0000 (13:17 +0100)]
quartz: GdkQuartzWindow -> GdkQuartzNSWindow was forgotten in one place
Michael Natterer [Thu, 15 Nov 2012 10:34:15 +0000 (11:34 +0100)]
quartz: filter out button press events on the window frame
Don't try to handle button press events on the window frame, they
have out-of-window coordinates. Also, break grabs on such events
so popup menus go away.
Patch from Kristian Rietveld, fixes bug 684419.
(cherry picked from commit
43e1354b71640d3fb7a47b997a436dc65bbd922f)
Jonny Lamb [Wed, 14 Nov 2012 12:10:59 +0000 (13:10 +0100)]
filechooser: remember sidebar width
https://bugzilla.gnome.org/show_bug.cgi?id=524295
Signed-off-by: Jonny Lamb <jonnylamb@gnome.org>
Benjamin Otte [Wed, 14 Nov 2012 18:35:47 +0000 (19:35 +0100)]
Revert parts of "window: Remove useless functions"
This reverts the size_allocate removal from commit
8449e05865b42a8c78b96f809b280aa5a4f044d8. That code was using
_gtk_window_set_allocation() instead of gtk_widget_set_allocation(). And
that broke glade.
Piotr Drąg [Wed, 14 Nov 2012 15:15:27 +0000 (16:15 +0100)]
Updated POTFILES.skip
Benjamin Otte [Wed, 14 Nov 2012 13:03:47 +0000 (14:03 +0100)]
sizerequest: Optimize CONSTANT_SIZE better
We can set for_size to -1 earlier than we did. Doing so makes sure we
only cache one value (as we should in the first place). In GTK 3.6, this
worked properly, but with Previously, this check was moved further up to
avoid interacting with size groups. But after recent refactorings, size
groups are handled way earlier anyway.
Benjamin Otte [Wed, 14 Nov 2012 12:24:58 +0000 (13:24 +0100)]
stylecontext: Add a flag to force style_updated() emission
This is used in gtk_widget_reset_style() (via GTK_CSS_CHANGE_ANY) now,
and that makes GtkSettings font related changes work again.
Benjamin Otte [Wed, 14 Nov 2012 00:50:17 +0000 (01:50 +0100)]
sizerequestcache: Move rest of code to array
... of orientation. Reduces more duplicate if branches.
Benjamin Otte [Wed, 14 Nov 2012 00:35:38 +0000 (01:35 +0100)]
sizerequestcache: Make code an array
We can use orientation as the index into an array. That way we can
delete half the code. Do it for the base request first in this patch.
Benjamin Otte [Wed, 14 Nov 2012 00:29:06 +0000 (01:29 +0100)]
sizegroup: Simplify comparison
Benjamin Otte [Wed, 14 Nov 2012 00:25:21 +0000 (01:25 +0100)]
sizerequest: Use GtkOrientation
... instead of GtkSizeGroupMode. Orientation is what we're interested in
after all. When we need a GtkSizeGroupMode, we can do the translation
where we need it.
Benjamin Otte [Wed, 14 Nov 2012 00:10:21 +0000 (01:10 +0100)]
sizerequestcache: Move lookup function
...and clean up its API.
Benjamin Otte [Tue, 13 Nov 2012 23:55:50 +0000 (00:55 +0100)]
sizerequestcache: Move commit function
Benjamin Otte [Tue, 13 Nov 2012 21:16:51 +0000 (22:16 +0100)]
widget: Get rid of unused flags
Now that we clear the cache immediately, there's no need anymore to
track if a request has been queued.
Benjamin Otte [Tue, 13 Nov 2012 21:02:53 +0000 (22:02 +0100)]
sizerequest: Cache the request mode
... in the GtkSizeRequestCache. That way, we only need to query it once,
and can remove the caching code from GtkContainer.
Benjamin Otte [Tue, 13 Nov 2012 20:51:29 +0000 (21:51 +0100)]
sizerequestcache: Make clear_cache clear all the cache
Benjamin Otte [Tue, 13 Nov 2012 20:43:50 +0000 (21:43 +0100)]
sizerequestcache: Move functions
... into the sizerequestcache.c file.
Benjamin Otte [Tue, 13 Nov 2012 20:41:08 +0000 (21:41 +0100)]
reftests: Turns out, green changed color
What used to be "green" is now "lime"
Benjamin Otte [Tue, 13 Nov 2012 20:21:10 +0000 (21:21 +0100)]
reftests: Update named colors reftest
Make reftest conform with correct colors. Pango has been updated to
these colors in commit
d2c319b9ded8cce864914d9f1fd704a7aff3112f
Benjamin Otte [Tue, 13 Nov 2012 12:41:05 +0000 (13:41 +0100)]
sizerequest: Split out size request cache code into separate header
Michael Natterer [Tue, 13 Nov 2012 18:58:40 +0000 (19:58 +0100)]
quartz: move SPLASHSCREEN-hinted windows to NSStatusWindowLevel
which does not really have a different effect than the previously
used NSPopUpMenuWindowLevel, but is what all code examples I found
are using, and it does make more sense.
(cherry picked from commit
47f0e3f1e1cd6b0ae61ec7ced48cc9802f1a95a4)
Timothy Arceri [Wed, 31 Oct 2012 11:05:48 +0000 (22:05 +1100)]
Remove bookmark duplicate of shortcut
Application code can set shortcut folders that are already bookmarks.
This code causes the bookmarks to be refreshed after the shortcut is
added removing any possible bookmark duplicates
https://bugzilla.gnome.org/show_bug.cgi?id=577806
Chun-wei Fan [Tue, 13 Nov 2012 06:26:08 +0000 (14:26 +0800)]
Visual C++ property sheets: Update GtkBinaryVersion
This should now be 3.0.0 like the autotools builds...
Mike Gorse [Sun, 11 Nov 2012 17:00:49 +0000 (11:00 -0600)]
Add accessibles for GtkEntry icons
Expose GtkEntry icons as child accessibles of a GtkEntry, and provide
actions to simulate clicking them. Also, refactor the a11y children test
slightly to add a test.
https://bugzilla.gnome.org/show_bug.cgi?id=686347
Mike Gorse [Sun, 11 Nov 2012 17:01:57 +0000 (11:01 -0600)]
Send a notification when a GtkEntry icon's tooltip text changes
Benjamin Otte [Sun, 11 Nov 2012 19:26:05 +0000 (20:26 +0100)]
reftests: Add a test for border-width problems
Benjamin Otte [Sun, 11 Nov 2012 19:24:58 +0000 (20:24 +0100)]
bin: Handle border width if we have to
Some bin subclasses call gtk_container_handle_border_width(), some
don't. So work with both cases.
Benjamin Otte [Sun, 11 Nov 2012 18:48:41 +0000 (19:48 +0100)]
container: Simplify code
We will never get allocated a too small size, so no need to handle that
case.
Benjamin Otte [Sun, 11 Nov 2012 18:42:56 +0000 (19:42 +0100)]
window: Remove useless functions
Now that GtkBin implements sizing functionality, there's no need to do
the same in GtkWindow
Benjamin Otte [Sun, 11 Nov 2012 18:30:11 +0000 (19:30 +0100)]
bin: Only handle size for the child if it is visible
Piotr Drąg [Sat, 10 Nov 2012 19:21:33 +0000 (20:21 +0100)]
Updated POTFILES.skip
Benjamin Otte [Sat, 10 Nov 2012 17:54:35 +0000 (18:54 +0100)]
tests: Add an intersection test for the recent bug
Just using the hardcoded bitmasks triggered the bug fixed in commit
e8f2eeac9221d91ba32447bbcbdc5ba057647f8e - so just do that as the test.
Benjamin Otte [Sat, 10 Nov 2012 17:53:34 +0000 (18:53 +0100)]
tests: Add some bitmasks to the hardcoded list
The bitmasks with the 31st, 32nd and 63rd bit set are added. The make up
the largest bitmasks on 32bit/64bit that can be represented without
allocating and the smallest bitmask on 32bit that must be allocated.
Benjamin Otte [Sat, 10 Nov 2012 17:35:37 +0000 (18:35 +0100)]
bitmask: Fix intersection code
With the fix in
77912a65e2aa6eb9cfee994fa93bbfbc6b9f8538, another bug
got visible: booleans are 32 bits, so if the intersection between the 2
bitmasks happened in higher bits, the return value would be truncated to
FALSE.
This actually made slider handles disappear, so it was pretty visible.
Benjamin Otte [Fri, 9 Nov 2012 19:30:48 +0000 (20:30 +0100)]
cssvalue: Make shade() work properly again
In a previous commit, I accidentally scaled the hue instead of the
saturation. Ooops.
Benjamin Otte [Fri, 9 Nov 2012 19:23:56 +0000 (20:23 +0100)]
reftests: Add a test for all the color names
BIG NOTE: We fail on some of these to give the colors defined in the CSS
specs. This is not good, but I'm not sure how to best fix it.
For those cases, I've kept the correct color in the CSS file but added
the correct one next to it.
Piotr Drąg [Fri, 9 Nov 2012 23:38:13 +0000 (00:38 +0100)]
Updated POTFILES.skip
Stef Walter [Fri, 9 Nov 2012 10:55:44 +0000 (11:55 +0100)]
icon-theme: Add some preconditions for NULL arguments
Related to this crash: https://bugzilla.gnome.org/show_bug.cgi?id=687967
https://bugzilla.gnome.org/show_bug.cgi?id=687977
Alexander Larsson [Fri, 9 Nov 2012 09:09:06 +0000 (10:09 +0100)]
Make _gtk_css_lookup_get_missing inline
This is called a lot in the loop in gtk_css_style_provider_lookup which
actually showed up on profiles.
Alexander Larsson [Fri, 9 Nov 2012 09:06:55 +0000 (10:06 +0100)]
gtk_css_style_provider_lookup: minor loop optimiziation
This is a minor performance improvement but this loop
is run a lot so it actually matters in large state
changes.
Alexander Larsson [Fri, 9 Nov 2012 09:15:23 +0000 (10:15 +0100)]
Exit early in gtk_style_context_update_cache codepaths
If lookup->missing is empty we don't need to continue looking.
We short circuit in several places as this can happen
after iteratively makeign lookup->missing smaller.
Alexander Larsson [Fri, 9 Nov 2012 08:05:47 +0000 (09:05 +0100)]
Fix cnp bug in _gtk_bitmask_intersects
We need to use the allocated codepath if *any* argument is
allocated, not if one arg is not allocated.
This bug caused unnecessary calls to _gtk_bitmask_is_allocated,
as well as return completely wrong result if both bitmask are
allocated.
Alexander Larsson [Wed, 7 Nov 2012 11:57:38 +0000 (12:57 +0100)]
gdk: Add gdk_window_has_alpha helper
This centralizes the current checks for has_alpha_bg, which
lets us extend the check later.
https://bugzilla.gnome.org/show_bug.cgi?id=687842
Alexander Larsson [Wed, 7 Nov 2012 11:54:55 +0000 (12:54 +0100)]
Add "parent widget" button to test property editor
Without this its hard to access the properties of container
widgets.
https://bugzilla.gnome.org/show_bug.cgi?id=687842
Jasper St. Pierre [Fri, 9 Nov 2012 00:13:52 +0000 (19:13 -0500)]
gtkbin: Remove the silliest code on earth
What is this bin doing with all these crazy deltas? Company does:
<Company> that can safely be removed
<Company> in general, code that isn't obvious can either be understood
<Company> with a bit of thinking or it can be removed
<Company> if in doubt, go for the 2nd of those :)
Most GtkBin subclasses override this strange garbage anyway, so it's
not like this code is ever *run*, per se. Just make it proxy directly
to the child, and hope nothing goes wrong.
Jasper St. Pierre [Thu, 8 Nov 2012 23:21:01 +0000 (18:21 -0500)]
gtkbin: Complete more of a base implementation for GtkBin subclasses
Implement get_preferred_width, get_preferred_height, and size_allocate.
This allows GtkBin subclasses to be quick and easy, without the
author doing the subclassing to have to do much work.
Jasper St. Pierre [Thu, 8 Nov 2012 23:40:38 +0000 (18:40 -0500)]
gtkversion.h.in: Put the documentation inside the header guards
This fixes a warning with gobject-introspecion scanning
Benjamin Otte [Thu, 8 Nov 2012 22:16:55 +0000 (23:16 +0100)]
reftests: Add test for recent fix
Benjamin Otte [Thu, 8 Nov 2012 22:15:19 +0000 (23:15 +0100)]
label: Fix another sizing corner case causing segfaults
If the "wider" label is the smaller one, use the wider size for both
cases. This can happen when ellipsizing a single character, which is
often smaller than the ellipsizing glpyph(s).
Benjamin Otte [Thu, 8 Nov 2012 21:08:36 +0000 (22:08 +0100)]
stylecontext: Fix a memleak
Benjamin Otte [Thu, 8 Nov 2012 17:21:45 +0000 (18:21 +0100)]
stylecontext: Remove unused function
Benjamin Otte [Thu, 8 Nov 2012 16:33:53 +0000 (17:33 +0100)]
cssvalue: Convert shadows to GtkCssColorValue
Benjamin Otte [Thu, 8 Nov 2012 16:25:26 +0000 (17:25 +0100)]
cssimage: Use GtkCssColorValue
Benjamin Otte [Thu, 8 Nov 2012 16:22:56 +0000 (17:22 +0100)]
cssstyleproperty: Replace symbolic colors with GtkCssColorValue
Benjamin Otte [Thu, 8 Nov 2012 16:03:15 +0000 (17:03 +0100)]
cssvalue: Add GtkCssColorValue
This is mostly copy/paste from GtkSymbolicColor and is indeed intended
to replace it.
Benjamin Otte [Thu, 8 Nov 2012 15:17:00 +0000 (16:17 +0100)]
symboliccolor: Change the print output
Functions should not have a space before the opening parenthesis. So
change output like
alpha (@color, 0.5)
to
alpha(@color, 0.5)
and do the same for "shade" and "mix".
Tests have been updated accordingly.
Benjamin Otte [Thu, 8 Nov 2012 14:26:33 +0000 (15:26 +0100)]
symboliccolor: Split out HSLA code
Matthias Clasen [Thu, 8 Nov 2012 01:21:50 +0000 (20:21 -0500)]
Update a11y test results
These are expected changes, since a11y class name show up in the
dumps.
Matthias Clasen [Thu, 8 Nov 2012 01:17:30 +0000 (20:17 -0500)]
Nuke GtkBoxAccessible
It didn't contain anything useful.
Cosimo Cecchi [Wed, 7 Nov 2012 20:46:16 +0000 (15:46 -0500)]
text-cell-accessible: fix a double unref
We're unreffing the GtkCellRenderer object twice, causing the
application to crash when trying to access the renderer later.
https://bugzilla.gnome.org/show_bug.cgi?id=687872
Cheng-Chia Tseng [Tue, 6 Nov 2012 18:35:44 +0000 (02:35 +0800)]
Updated Traditional Chinese translation(Hong Kong and Taiwan)
Benjamin Otte [Tue, 6 Nov 2012 19:51:29 +0000 (20:51 +0100)]
gradient: Add color stops to the right gradient
This was causing an infinite loop happily eating up memory.
https://bugzilla.gnome.org/show_bug.cgi?id=687467
Benjamin Otte [Tue, 6 Nov 2012 19:51:15 +0000 (20:51 +0100)]
tests: Include config.h
Benjamin Otte [Tue, 6 Nov 2012 19:50:09 +0000 (20:50 +0100)]
Disable deprecation checks for all libraries we depend on on stable branches.
This is so newer versions of those libraries don't cause more warnings
with a stable GTK version.
We don't ever want to turn off deprecation warnings for master however,
because that's where we get rid of deprecated API we use.
Note that only glib allows use to easily do this, so nothing is done for
Pango, gdk-pixbuf or Cairo here.
Benjamin Otte [Tue, 6 Nov 2012 16:50:14 +0000 (17:50 +0100)]
cssimage: Fix huge memleak
When transitioning gradients, we were leaking the gradient structs. Not
good.
https://bugzilla.gnome.org/show_bug.cgi?id=687467
Cosimo Cecchi [Tue, 6 Nov 2012 16:49:15 +0000 (17:49 +0100)]
css: Fix copy/paste error
Benjamin replaced start with end in a bunch of locations, but not all of
them apparently.
Piotr Drąg [Mon, 5 Nov 2012 22:04:55 +0000 (23:04 +0100)]
Updated POTFILES.skip
Benjamin Otte [Mon, 5 Nov 2012 18:34:00 +0000 (19:34 +0100)]
reftests: Add a reftest for latest fix
Benjamin Otte [Mon, 5 Nov 2012 17:55:27 +0000 (18:55 +0100)]
label: Handle crazy corner cases
With ellipsizing, the ellipsized text can have a smaller height than the
non-ellipsized text. So the wider text is also higher. Example:
.<big>TEXT</big>
will ellipsize to the small text.
Reported-By: Rico Tzschichholz <ricotz@t-online.de>
Adorilson Bezerra [Mon, 5 Nov 2012 14:11:26 +0000 (12:11 -0200)]
Fixed Brazilian Portuguese Translation
Matthias Clasen [Tue, 30 Oct 2012 16:52:11 +0000 (12:52 -0400)]
Bump GLib dependency to 2.35
And drop deprecated g_type_init() calls.
Benjamin Otte [Sun, 4 Nov 2012 16:57:49 +0000 (17:57 +0100)]
reftests: Add test for recent fix
This test checks the fix in
a46368dede684ded093395ac056eaeecf554330d
Benjamin Otte [Sun, 4 Nov 2012 16:15:20 +0000 (17:15 +0100)]
reftests: Mark windows as popup
This makes the tests run faster and should always be done.
Stefano Facchini [Sun, 4 Nov 2012 16:42:55 +0000 (17:42 +0100)]
sizerequest: do not derefence NULL pointers
Paolo Borelli [Sun, 4 Nov 2012 15:46:35 +0000 (16:46 +0100)]
gtkmenubutton: remove weak pointer when needed
We must make sure to remove the weak pointer when disposing the widget
or when resetting the align widget otherwise glib will try to nullify
invalid memory.
Paolo Borelli [Sun, 4 Nov 2012 11:09:23 +0000 (12:09 +0100)]
gtkmenubutton: set menu to NULL in dispose.
Prevent menu to be detached multiple times.
Benjamin Otte [Sun, 4 Nov 2012 15:10:20 +0000 (16:10 +0100)]
sizerequest: Restructure code
Make the compute_size_request() function take into account size groups
itself instead of doing a weird "bump_requisition" call.
Benjamin Otte [Sun, 4 Nov 2012 15:02:14 +0000 (16:02 +0100)]
sizerequest: Move sizegroups function to different source file
Benjamin Otte [Sun, 4 Nov 2012 14:47:03 +0000 (15:47 +0100)]
sizegroup: Construct the set of sizegroup peers as a hash table
This way we don't need a marker on GtkWidgetParivate that needs to be
unset later, so we have all our data in the same place and can avoid
problems with reentrancy and shenanigans like that.
But the main reason I wrote that is cleaner code.
Benjamin Otte [Sun, 4 Nov 2012 13:28:04 +0000 (14:28 +0100)]
reftests: Add a test from evolution
This was used in a bug report.
https://bugzilla.gnome.org/show_bug.cgi?id=677609
Benjamin Otte [Sat, 3 Nov 2012 18:01:11 +0000 (19:01 +0100)]
reftests: Add a test for all the recent sizegroup hackery
Benjamin Otte [Sat, 3 Nov 2012 17:57:50 +0000 (18:57 +0100)]
sizegroup: Use _gtk_widget_compute_size_for_orientation()
With this function now available, we can do size computation in 2
ways:
(1) Compute size with size groups
(2) Compute size without size groups
And have (1) use (2) instead of setting flags on widgets. This patch
does exactly that.